//自己写的
#include <iostream>
#include <string>  
using namespace std;
string s;
int F(int l,int r)
{
  while(l<r)
  {
    if(s[l]>s[r])
      return 1;
    else if(s[l]==s[r])
      l++,r--;
    else break;
  }
  return 0;
}

int main() {

    cin >> s;
    int n=s.length();
    int ans=0;

    for(int l=0;l<=n-2;l++)
    {
      for(int r=n-1;r>l;r--)
      {
        if(F(l,r))
          ans++;
      }
    }
    
    cout << ans <<endl;
    return 0;
}
//别人的答案
#include <iostream>
#include <cstring>
using namespace std;
int cnt=0;
string a;
/*'9'依然比‘3’大   /*双指针法*/
void pan(int i,int j) {
    while(a[i]==a[j]&&i<j) {
        i++;
        j--;
    }
    if(i>=j)return;
    if(a[i]>a[j])cnt++;
    return;
}
int main() {
    getline(cin,a);
    int n=a.size();
    for(int i=0; i<n-1; i++) {
        for(int j=i+1; j<n; j++) {
            pan(i,j);
        }
    }
    cout<<cnt;
    return 0;
}